1. Field of the Invention
The present invention generally relates to an equalization technique in communication systems and more particularly to adaptive equalization in wireless data communication systems.
2. Description of Related Art
In relatively noise-free data communication systems, when data is transmitted over a communication channel by means of a linear modulation scheme, for example by using Quadrature Phase Shift Keying (“QPSK”), the number of detectable levels that the channel can support is essentially limited by Inter Symbol Interference (“ISI”). ISI arises because of the “spreading” of a transmitted symbol pulse due to the dispersive nature of the channel, which results in an overlap of adjacent symbol pulses. Stated differently, ISI occurs when a portion of a signal representative of one bit of information interferes with a different portion of the signal representative of a different bit of information.
The adverse effects of ISI are more pronounced where the signal-to-noise ratio is high and the channel is relatively noise-free. In such channels, which are typically present in data (as opposed to voice) communications, the presence of ISI greatly degrades performance of the communications system.
A common cause of ISI is the “multipath” phenomenon. Simply stated, multipath refers to interference caused by the reception of the same signal over multiple paths. Depending on the speed of a mobile wireless unit (also called the “subscriber unit”), condition of the surrounding environment such as existence of buildings or mountains, and the transmission bandwidth, the transmitted symbol pulses may arrive at the receiver at different times. As such, components of neighboring symbol pulses may interfere constructively or destructively.
However, even in the absence of “multipath,” some ISI may still be generated due to the imperfections in the transmit and receive filters employed in the communications system. For example, frequency dependent attenuations in the physical devices comprising the transmit and receive filters can be a source of ISI.
It is generally known that equalization can be used to minimize the effects of ISI. Equalization involves altering a signal so that it may be more easily recognized at the receiver. A signal may be altered at the transmitter so that the influence of the channel on the signal will yield a signal capable of being properly recognized at the receiver. However, transmitter-based equalization is difficult since the transmitter must have a priori knowledge of the characteristics of the channel and any changes that may occur to the characteristics of the channel over time.
Equalization may also be performed at the receiver. Receiver-based equalization can use properties of the received signal to adjust equalization parameters. In wireless communications, since the mobile channel is random and time varying, equalizers must track the time varying characteristics of the mobile channel, and are thus called adaptive equalizers. Adaptive equalization attempts to apply a correct amount of equalization to the channel. In adaptive equalization, the equalizer coefficients are initially, or periodically, adjusted to “adapt” to the varying channel conditions. The general operating modes of an adaptive equalizer are the training and tracking modes. In the training mode, a known pilot symbol sequence is sent by the transmitter so that the receiver's adaptive equalizer may average its coefficients to proper initial values. The training sequence, i.e. the pilot symbol sequence, is typically a fixed, prescribed bit pattern.
Immediately following the training sequence, the modulated and spread message data are sent, and the adaptive equalizer at the receiver uses a prescribed algorithm, such as “least mean square” (LMS) or “recursive least squares” (RLS), to estimate the adaptive equalizer coefficients in order to compensate for the ISI caused by the transmit filter, the communication channel, and the receive filter.
Each data frame sent from the transmitter contains an initial pilot sequence, as well as a subsequent user message data sequence. As an example, the initial pilot sequence may take up approximately 5% of the entire data frame. However, the characteristics of the transmit filter, the communication channel, and the receive filter may change during each data frame, and also from frame to frame. Thus, the initial pilot sequence in each frame of data is used for achieving an initial setting of the equalizer coefficients. Moreover, after the initial setting of the equalizer coefficients, during each frame when user message data are received, the equalizer coefficients are adapted by utilizing a prescribed algorithm.
The initial pilot (or training) sequence in each frame is designed to permit the adaptive equalizer at the receiver to acquire the proper coefficients so that when the training sequence is finished, the filter coefficients are near optimal values for reception of user message data during the remainder of the frame. As user message data are received, the adaptive algorithm of the equalizer tracks the changing characteristics of the transmit filter, the communication channel, and the receive filter. As a consequence, the adaptive equalizer is continually changing its filter characteristics over time.
A common type of adaptive equalizer is a linear adaptive equalizer. There are two general types of linear adaptive equalizers, the “transversal” type and the “lattice” type. FIG. 1 illustrates a transversal linear adaptive equalizer 100. The transversal linear adaptive equalizer 100 in FIG. 1 is a type of finite-duration impulse response filter (“FIR”) which is well known in the art. Referring to FIG. 1, an output of receive FIR filter 102 provides input to equalizer 100 which is marked as x(n) in FIG. 1. The output of receive FIR filter 102 is coupled to unit delay element z−1 106 and also to multiplier 104 which has a tap weight w0(n). The output of unit delay element z−1 106 is marked as x(n−1) and is coupled to unit delay element z−1 112 and to multiplier 108 which has a tap weight w1(n). The output of unit delay element z−1 112 is marked as x(n−2) and is coupled to a subsequent unit delay element not shown in FIG. 1 and to multiplier 114 which has a tap weight w2(n). Unit delay element z−1 122 and multiplier 118 having a tap weight of wm−2(n) receive their respective inputs, marked as x(n−m+2), from a previous unit delay element not shown in FIG. 1. The output of unit delay element z−1 122 is marked as x(n−m+1) and is coupled to multiplier 124 which has a tap weight wm−1(n).
Respective outputs of multipliers 104, 108, 114, 118, and 124 are added by adders 110, 116, 120, and 126 to result in a final output â(n) of equalizer 100. Equalizer output â(n) is fed to slicer 128 which results in a slicer output ã(n). Equalizer 100 output â(n) is subtracted from slicer 128 output ã(n) by adder 130. The result of the subtraction operation is e(n) which is the output of adder 130.
By way of overview, during operation of equalizer 100 an adaptive algorithm is utilized to adapt the equalizer coefficients which are represented by tap weights w0(n), w1(n) to wm−1(n) in FIG. 1. The equalizer coefficients are adjusted either on a sample by sample basis (i.e. whenever n is incremented by 1) or on a block by block basis (i.e. whenever a specified number of samples have been clocked into the equalizer). The adaptive algorithm used to adapt tap weights w0(n), w1(n) to wm−1(n) is controlled by the error signal e(n). During the tracking mode of the adaptive equalizer operation, the error signal e(n) is obtained by comparing the output â(n) of equalizer 100 with the output ã(n) of slicer 128.
Slicer 128 is an example of a “decision making device” which applies a thresholding operation in order to arrive at a “hard estimate” of the original data transmitted from the transmitter. This hard estimate which is the desired output of equalizer 100 is compared against the actual output â(n) of equalizer 100. The actual output â(n) of equalizer 100 is also referred to as a “soft estimate” of the original data transmitted from the transmitter. Subtraction of the actual output â(n) from the desired output ã(n) results in the error signal e(n). It is noted that during the training mode of the adaptive equalizer operation, the slicer operation is not required; the desired output ã(n) is known to the receiver and can be fed directly to adder 130 in order to arrive at error signal e(n).
The error signal e(n) is used in an adaptive algorithm to iteratively adjust the equalizer tap weights to arrive at their optimum values. An example of an adaptive algorithm is the “least mean square” (LMS) algorithm which is used to adjust the tap weights to their optimum values using the following iterative operation:wk(n+1)=wk(n)+Δxk(n)e* (n)   equation (1)                where xk(n)=x(n−k), k being an integer between 0 and m−1; where        where e(n)=ã(n)−â(n); and             a      ^        ⁢          (      n      )        =            ∑              k        =        0                    m        -        1              ⁢                            w          k          *                ⁢                  (          n          )                    ⁢                        x          k                ⁢                  (          n          )                            and where Δ is a constant.        
Thus, each present tap weight w0(n), w1(n) to wm−1(n) is adjusted to a corresponding new tap weight w0(n+1), w1(n+1) to wn−1(n+1) by adding the respective present tap weight to the product of the constant Δ, the corresponding input value x0(n), x1(n) to xm−1(n), and the present value of error signal e(n). The constant Δ is determined so as to control the variation between tap weights on successive iterations. The iterative process in equation (1) is repeated rapidly in a programming loop while adaptive equalizer 100 attempts to converge and minimize the error signal e(n). Upon reaching convergence, the adaptive algorithm freezes the tap weights until the error signal e(n) exceeds an acceptable level or until a new training sequence is sent from the transmitter.
However, the linear adaptive equalization scheme explained above in relation to FIG. 1 cannot be simply applied to a receiver system where “Walsh covering” has been used at the transmitter. By way of background, according to current standards in spread spectrum communication systems, such as those used in CDMA (“Code Division Multiple Access”), all subscriber units operating within a cell share a single “outer” PN (“Pseudorandom Noise”) code. In a given spread spectrum communication system using Walsh functions (also called Walsh code sequences), a pre-defined Walsh function matrix having N rows of N chips each is established in advance to define the different Walsh functions to be used to distinguish subscriber signals in the same cell. A Walsh function matrix having N rows, with each row having N chips, is also referred to as a Walsh function matrix of order N. An example of a Walsh function matrix where N is equal to 4, i.e. a Walsh function matrix of order 4, is shown below:       [                            1                          1                          1                          1                                      1                          0                          1                          0                                      1                          1                          0                          0                                      1                          0                          0                          1                      ]     
In the above example, there are 4 Walsh functions, each function having 4 chips. Each Walsh function is one row in the above Walsh function matrix. For example, the third row of the Walsh function matrix is the Walsh function having the sequence 1, 1, 0, 0. It is seen that each Walsh function, i.e. each row in the above matrix, has zero correlation with any other row in the matrix. Stated differently, exactly half of the chips in every Walsh function differ from those in every other Walsh function in the matrix.
In practice, Walsh functions of length 16, 64, or 128 (i.e. Walsh functions having respectively 16, 64, or 128 chips in each Walsh code sequence) are used. As an example, when a Walsh function of length 64 is used, orthogonality of 64 subscribers within a given cell is achieved.
Although the use of Walsh modulation in wireless communications is desirable, its use renders known adaptive equalization techniques inapplicable. The reason is that Walsh functions transform each data symbol (also called “code symbol” in the present application) to a sequence of chips which, after typically being processed by a chip level summer and being spread by a PN code, are transmitted across a communication channel to a receiver. Thus, what is ultimately received at the receive FIR, such as receive FIR 102 in FIG. 1, is a sequence of chips as opposed to code symbols. As such, the known adaptive equalization schemes, such as that discussed in relation with FIG. 1, cannot be directly applied since, for example, the error signal e(n), must be determined by a method which takes into account the transformation of symbols into chips at the transmitter. Accordingly, there is need in the art for an adaptive equalizer which can be used when code symbols to be transmitted undergo “Walsh covering” and a sequence of “Walsh covered” chips, as opposed to the original code symbols, are transmitted.